﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using CoreGallery.Addins.Contracts;

namespace CoreGallery.Transformation
{
    /// <summary>
    /// Provides a crop operation to reduce an image to a given subregion of it
    /// </summary>
    [CoreAddin("Cropping image transformation", "{18204578-F3B1-4b6f-98CE-15000AAC85C6}",
        Description = "Provides a means to crop photos to a region of interest")]
    public class CropTransformation : ITransformAddinBase
    {
        #region ITransformAddinBase Members

        public bool SupportsOptionsDialog
        {
            get { throw new NotImplementedException(); }
        }

        public string Name
        {
            get { return "Cropping image transformation"; }
        }

        public string Creator
        {
            get { throw new NotImplementedException(); }
        }

        public Guid UniqueKey
        {
            get { return new Guid("{18204578-F3B1-4b6f-98CE-15000AAC85C6}"); }
        }

        public string Description
        {
            get { return "Provides a means to crop photos to a region of interest."; }
        }

        public string AboutText
        {
            get { return "Core cropping transformation"; }
        }

        public Version Version
        {
            get { return new Version(1, 0); }
        }

        public void PerformTransform(IPhoto p)
        {
            throw new NotImplementedException();
        }

        public void PreviewTransform(IPhoto p)
        {
            throw new NotImplementedException();
        }

        public void QueueTransform(IPhoto p)
        {
            throw new NotImplementedException();
        }

        public void ShowOptionsDialog()
        {
            throw new NotImplementedException();
        }

        public void OnInit()
        {
            Console.WriteLine("CropTransformation init");
        }

        public void OnLoad()
        {
            Console.WriteLine("CropTransformation load");
        }

        public void OnUnload()
        {
            Console.WriteLine("CropTransformation unload");
        }

        #endregion
    }
}
